package org.example.utils;


import cn.hutool.core.util.StrUtil;
import cn.hutool.setting.dialect.Props;

/**
 * @description 读取配置文件返回配置对象
 * @author sats@jz
 * @date 2024年12月25日 10:47
 */
public class ConfigUtils {
    public static <T> T loadConfig(Class<T> clazz, String prefix) {
        return loadConfig(clazz, prefix, "");
    }

    private static <T> T loadConfig(Class<T> clazz, String prefix, String environment) {
        // TODO 什么意思
        StringBuilder sb = new StringBuilder("application");
        if (StrUtil.isNotBlank(environment)){
            sb.append("-").append(environment);
        }
        sb.append(".properties");
        Props props = new Props(sb.toString());

        return props.toBean(clazz, prefix);
    }
}
